| PROJECT STATUS: | Completed |
| PROJECT TYPE: | Education |
| LANGUAGES: | C++ |
| SUPPORTED PLATFORMS: | Windows & Playstation 5 |
| TEAM SIZE: | 5 |
| TEAM ROLE: | Audio Programmer |
| PRODUCTION TIME: | 9 weeks |
The 'Quack' Game Engine was a team-based project during my 3rd year of University where we were tasked with designing and developing a complete, feature-full,
game engine entirely from scratch (with help from libraries if deemed appropriate). Throughout development, we had to ensure that the engine's architecture was abstracted enough that it
could support reuse across any number of additional projects, as well as be ported to different platforms.
The platforms we decided to focus on were Windows and Playstation 5, as for the games we designed to showcase the engine, we decided to replicate the popular multiplayer party game 'Duck Game' for one of them,
with the other being a level editor for the 'Duck Game' replicate. Because of my area of expertise for this project, I will be focusing on the 'Duck Game' project.
My primary role throughout development was as the teams audio programmer, and I did so via intergrating 'Fmod' into our Engine, this is because creating an audio library
from scratch was far outside the modules scope, as well as because 'Fmod' is often used within industry.
This includes all the necessary audio features for any project, such as the following (all of which are showcased in the video above);
• Single-use Audio-playback (Used for sound effects)
• Looping Audio (Used for music)
• Different Audio Channels (Music, SFX, etc)
• External Sound File Loading
• Oscilator - Allowing for Computer Generated Sounds (Sine Wave, etc)
This was done by setting an object as a listener, with the closer another sound in-game is to the listener, the louder they are, and vice versa until
they exist the maximum range, which is set in the Audio Engine's initialisation.
(For demonstration purposes in the video, the listener just moves left and right to show the music being affected)